#!/bin/bash
set -euo pipefail

echo "=============================="
echo "🧹 EasyTier 停止脚本"
echo "=============================="

VPN_DIR="/vpn"
EASYTIER_CORE_NAME="easytier-core"
LOG_FILE="/var/log/easytier-core.log"
PID_FILE="/var/run/easytier.pid"
SERVICE_FILE="/etc/systemd/system/easytier.service"

# 检查权限
if [ "$(id -u)" -ne 0 ]; then
  echo "⚠️ 请使用 root 权限运行，例如：sudo bash uninstall_easy.sh"
  exit 1
fi

echo "🛑 正在停止 EasyTier 进程..."

# 1. 尝试使用 PID 文件停止
if [ -f "$PID_FILE" ]; then
  PID=$(cat "$PID_FILE")
  if kill -0 "$PID" 2>/dev/null; then
    kill "$PID" && echo "✅ 已停止 PID=$PID"
  fi
  rm -f "$PID_FILE"
else
  # 2. 如果没有 PID 文件，则用进程名停止
  pkill -f "$EASYTIER_CORE_NAME" 2>/dev/null && echo "✅ 已停止所有 easytier-core 进程"
fi

# 3. 停止并禁用 systemd 服务（如存在）
if [ -f "$SERVICE_FILE" ]; then
  systemctl stop easytier 2>/dev/null || true
  systemctl disable easytier 2>/dev/null || true
  rm -f "$SERVICE_FILE"
  systemctl daemon-reload
  echo "✅ 已取消 systemd 自启动配置"
fi

# 4. 删除文件与目录
echo "🗑️ 删除安装文件与日志..."
# rm -rf "$VPN_DIR" "$LOG_FILE" "$PID_FILE" 2>/dev/null || true

echo "✅ 删除完成"
echo "=============================="
echo "EasyTier 已彻底卸载"
echo "如需重新安装，可运行你的 install_easy.sh 脚本"
echo "=============================="
